#ifndef __BSP_ETH_H__
#define __BSP_ETH_H__

#include "stm32f4xx_hal.h"

/**ETH GPIO Configuration
      PC0     ------> ETH_RST           OK
      PC1     ------> ETH_MDC           OK
      PA1     ------> ETH_REF_CLK       OK
      PA2     ------> ETH_MDIO          OK
      PA7     ------> ETH_CRS_DV        OK
      PC4     ------> ETH_RXD0          OK
      PC5     ------> ETH_RXD1          OK
      PB11     ------> ETH_TX_EN        OK
      PB12     ------> ETH_TXD0
      PB13     ------> ETH_TXD1
      */

/* Private defines --------------------------------------*/
/* PA8_MCO1   PA8   这个管脚输出25MHz的时钟*/
#define MCO1_GPIO_Port GPIOA
#define MCO1_Pin GPIO_PIN_8

#define ETH_RST_Pin GPIO_PIN_0 //C0
#define ETH_RST_GPIO_Port GPIOC

#define ETH_MDC_Pin GPIO_PIN_1 //C1
#define ETH_MDC_GPIO_Port GPIOC
#define ETH_REF_CLK_Pin GPIO_PIN_1 //A1
#define ETH_REF_CLK_GPIO_Port GPIOA
#define ETH_MDIO_Pin GPIO_PIN_2 //A2
#define ETH_MDIO_GPIO_Port GPIOA
#define ETH_CRS_DV_Pin GPIO_PIN_7 //A7
#define ETH_CRS_DV_GPIO_Port GPIOA
#define ETH_RXD0_Pin GPIO_PIN_4 //C4
#define ETH_RXD0_GPIO_Port GPIOC
#define ETH_RXD1_Pin GPIO_PIN_5 //C5
#define ETH_RXD1_GPIO_Port GPIOC
#define ETH_TX_EN_Pin GPIO_PIN_11 //B11
#define ETH_TX_EN_GPIO_Port GPIOB
#define ETH_TXD0_Pin GPIO_PIN_12 //B12
#define ETH_TXD0_GPIO_Port GPIOB
#define ETH_TXD1_Pin GPIO_PIN_13 //B13
#define ETH_TXD1_GPIO_Port GPIOB

HAL_StatusTypeDef Bsp_Eth_Init(void);

#endif
